/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package controller;

import java.sql.SQLException;
import java.util.Date;
import java.util.LinkedList;
import model.dto.LoteMudaDTO;
import model.exception.MissingIdException;
import model.exception.NoChangesOnUpdateException;
import model.exception.NotNullFieldsException;
import model.handler.LoteMudaHandler;

/**
 *
 * @author Gabriel
 */
public class LoteMudaController {

    LoteMudaHandler loteMudaHandler;

    public LoteMudaController() throws SQLException, ClassNotFoundException {
        loteMudaHandler = new LoteMudaHandler();
    }

    public LinkedList<LoteMudaDTO> pesquisaLoteMuda(Integer id,
                                                    String nomeEspecie,
                                                    Date dataPlantio,
                                                    String faseMuda,
                                                    String localArmazenamento,
                                                    Integer qtdMudas) throws SQLException {
        return loteMudaHandler.pesquisaLoteMuda(id, nomeEspecie, dataPlantio, faseMuda, localArmazenamento, qtdMudas);
    }

    public void cadastraLoteMuda(LoteMudaDTO loteMudaDTO) throws SQLException, NotNullFieldsException {
        loteMudaHandler.cadastraLoteMuda(loteMudaDTO);
    }

    public void atualizaLoteMuda(LoteMudaDTO loteMudaDTO,
                                 boolean atualizaDataPlantio) throws MissingIdException, NotNullFieldsException, NoChangesOnUpdateException, SQLException {

        loteMudaHandler.atualizaLoteMuda(loteMudaDTO, atualizaDataPlantio);
    }

}
